package org.jeecg.modules.demo.yxqcyfOrder.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import org.jeecg.modules.demo.yxqcyfOrder.entity.PayableGeneralLedgerVo;
import org.jeecg.modules.demo.yxqcyfOrder.entity.PayableSubLedgerVo;
import org.jeecg.modules.demo.yxqcyfOrder.entity.YxQcyfOrder;

import java.util.List;

/**
 * @Description: 期初应付款单
 * @Author: jeecg-boot
 * @Date:   2023-03-15
 * @Version: V1.0
 */
public interface YxQcyfOrderMapper extends BaseMapper<YxQcyfOrder> {
    public String getMaxCode();

    public YxQcyfOrder getByOrder(@Param("order") String order);

    public List<YxQcyfOrder> getListByPoOrder(@Param("poOrder") String poOrder);



    public List<PayableSubLedgerVo> getPuinvoice(@Param("supplier") String supplier);

    public List<PayableSubLedgerVo> getSopayOrder(@Param("order") String order);

    public PayableSubLedgerVo getOpeningList(@Param("supplier") String supplier);

    public List<PayableSubLedgerVo> getOpeningSopayOrderList(@Param("order") String order);

    public List<PayableSubLedgerVo> getPaymentInAdvanceList(@Param("supplier") String supplier);



    public List<PayableSubLedgerVo> getSoinvoice(@Param("supplier") String supplier);

    public List<PayableSubLedgerVo> getSaleListBySoOrder(@Param("poOrder") String poOrder);

    public PayableSubLedgerVo getSaleOpeningList(@Param("supplier") String supplier);

    public List<PayableSubLedgerVo> getSaleOpeningSopayOrderList(@Param("order") String order);

    public List<PayableSubLedgerVo> getSalePaymentInAdvanceList(@Param("supplier") String supplier);



    public List<PayableGeneralLedgerVo> getMeetList();

    public Double getTotalPaid(@Param("chumdwmc") String chumdwmc);

    public Double getTotalAdvance(@Param("chumdwmc") String chumdwmc);

    public Double getOpeningBalance(@Param("chumdwmc") String chumdwmc);


    public List<PayableGeneralLedgerVo> getReceivableList();

    public Double getTotalReceived(@Param("chumdwmc") String chumdwmc);

    public Double getTotalCollect(@Param("chumdwmc") String chumdwmc);

    public Double getSaleOpeningBalance(@Param("chumdwmc") String chumdwmc);
}
